﻿#ifndef CPubAlarmTable_H
#define CPubAlarmTable_H
/********************************************************************************
** @ Date:2025/09/15
** @ Author: HanJiaXin
** @ Description:报警记录表格公共卡片
** @ Version:1.0.0
** @ ClassName:CPubAlarmTable
** @ Fun:
********************************************************************************/
#include <QWidget>
#include <QStandardItemModel>
#include <QTimer>
#include <QMenu>
#include <QAction>
#include <QTableView>
#include "ui_CPubAlarmTable.h"
#include "CDevDataCam.h"

class CPubAlarmTable : public QWidget
{
	Q_OBJECT

public:
	CPubAlarmTable(int nType, QString sCardGuid, QWidget *parent = nullptr);
	~CPubAlarmTable();

private:
	void initUI();//初始化UI界面
	void initVecDevData();//初始化绑定的设备

private slots:
	void slotShowImg(QString sUrl);
	void slotMore();
	void slotConnectDev();
	void slotRefreshUI();

public slots:
	void refreshData(bool bRefresh);

signals:
	void sigShowImg(QString sAlarmGuid);

private:
	Ui::CPubAlarmTableClass ui;
	int m_nCardType;//0:获取设备列表时关于设备的绑定不处理  1:上层传来卡片Guid的时候需要处理
	QString m_sCardGuid;//卡片Guid
	QTimer* m_pTimer;
	QStandardItemModel* m_pModel; //表格数据集
	QVector<CDevDataCam*> m_vecDevData;
	QString m_sDevList;
	bool m_bConnectDevChanged;//绑定的设备是否发生变化
	//菜单
	QMenu* m_pMenu;
	QAction* m_pConnectDevAct;
	QAction* m_pMoreAct;
};

#endif